import pymysql


def get_prompt_contents(database_config):
    """
    从数据库中获取 prompt 字段的内容。

    :param database_config: 数据库的配置字典，包括 host, port, user, password, database.
    :return: 一个列表，包含 prompt 字段的内容（按顺序查询）。
    """
    contents = []

    # 建立数据库连接
    connection = pymysql.connect(
        host=database_config['host'],
        port=database_config['port'],
        user=database_config['user'],
        password=database_config['password'],
        database=database_config['database'],
        charset='utf8mb4',
        cursorclass=pymysql.cursors.DictCursor
    )

    try:
        with connection.cursor() as cursor:
            # 查询数据库中的 prompt 内容
            sql_query = "SELECT prompt FROM prompt ORDER BY id"  # 按表本身的顺序。
            cursor.execute(sql_query)
            result = cursor.fetchall()

            # 提取 prompt 字段内容到列表中
            contents = [row['prompt'] for row in result]
    except Exception as e:
        print(f"从数据库中获取内容失败: {e}")
    finally:
        connection.close()

    return contents
